// 在ajax上使用promise
function ajax(url) {
    return new Promise(function(resolve, reject) {
        var xhr = new XMLHttpRequest()
        xhr.open('GET',url)
        xhr.responseType = 'json'
        xhr.onload = function() {
            if(this.status === 200) {
                resolve(this.response)
            }else {
                reject(new Error(this.statusText))
            }
        }
        xhr.send()
    }) 
}
ajax('api/user.json').then(function(res) {
    console.log(res)
},function(error) {
    console.log(error)
})


// promisee的本质，也就是使用回调函数 定义的异步任务所需要执行的任务，只不过这里的回调函数是通过then方法传递进去的。
